283A - Cows and Sequence - CodeForces Solution


constructive algorithms data structures implementation *1600

Please click on ads to support us..

C++ Code:

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int INF = 1e9+7;
const int N = 2e5+8;
int n, t, a, x, k, pos, tot, arr[N], y[N];
void solve(){
  cin>>n;
  pos = 0, tot = 0LL;
  arr[0] = 0; ++pos;
  for(int i = 0; i < n; i++){
    cin>>t;
    if(t == 1){
      cin>>x>>a;
      tot += (a*x);
      arr[x-1] += a;
    } else if(t == 2){
      cin>>k;
      y[pos++] = k;
      tot += k;
    } else if(t == 3){
      --pos;
      tot -= arr[pos];
      tot -= (y[pos] + 0);
      if(pos > 0){
        arr[pos-1] += arr[pos];
      }
      arr[pos] = 0;
    }
    cout<<fixed<<setprecision(8)<<(long double)tot/(long double)pos<<'\n';
  }
}
int32_t main()
{
  cin.tie(0)->sync_with_stdio(false);
  int test_cases = 1;
  // cin>>test_cases;
  while(test_cases--){
    solve();
  }
}


Comments

Submit
0 Comments
More Questions

519A - A and B and Chess
725B - Food on the Plane
154B - Colliders
127B - Canvas Frames
107B - Basketball Team
245A - System Administrator
698A - Vacations
1216B - Shooting
368B - Sereja and Suffixes
1665C - Tree Infection
1665D - GCD Guess
29A - Spit Problem
1097B - Petr and a Combination Lock
92A - Chips
1665B - Array Cloning Technique
1665A - GCD vs LCM
118D - Caesar's Legions
1598A - Computer Game
1605A - AM Deviation
1461A - String Generation
1585B - Array Eversion
1661C - Water the Trees
1459A - Red-Blue Shuffle
1661B - Getting Zero
1661A - Array Balancing
1649B - Game of Ball Passing
572A - Arrays
1455A - Strange Functions
1566B - MIN-MEX Cut
678C - Joty and Chocolate